﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Common.Service.RecordLog;

/**
   *  系統状态变更功能 
   *  创建时间：2019/10/10 wj
   *  修改时间：2019/12/20 wj
   */
namespace Common.Service.Staus
{
    public class SystemStaus
    {
        public static SystemMode systemStausMode = SystemMode.None;

        /**
           * \brief 获取系统模式提示
           * 
           * \param[in] wordData 系统模式类型变量
           */
        public static string GetSystemModeTip()
        {
            String tipText = String.Empty;
            switch (systemStausMode)
            {
                case SystemMode.EditMode:
                    tipText = String.Format("当前状态：编辑模式");
                    break;
                case SystemMode.PrerunMode:
                    tipText = String.Format("当前状态：试运行模式");
                    break;
                case SystemMode.RunMode:
                    tipText = String.Format("当前状态：运行模式");
                    break;
                case SystemMode.StopMode:
                    tipText = String.Format("当前状态：停止模式");
                    break;
                case SystemMode.SimulatPrerunMode:
                    tipText = String.Format("当前状态：仿真试运行模式");
                    break;
                case SystemMode.SimulatRunMode:
                    tipText = String.Format("当前状态：仿真运行模式");
                    break;
                case SystemMode.SimulatStopMode:
                    tipText = String.Format("当前状态：仿真停止模式");
                    break;
                default:
                    // 消息提示：
                    RecordManager.SendErrorLog(RecordType.Warn, "系统处于未知模式状态", "");
                    break;
            }
            return tipText;
        }
    }
}

// 系统当前所属模式
public enum SystemMode
{
    None,
    EditMode,                 //编辑模式
    PrerunMode,             // 试运行模式
    RunMode,                 // 运行模式
    StopMode,                // 停止模式
    SimulatPrerunMode,   // 仿真试运行
    SimulatRunMode,       // 仿真运行模式
    SimulatStopMode,      // 仿真停止模式
}